/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.documentar.controller;

import br.com.documentar.interfacee.InterfaceController;
import br.com.documentar.model.AssociarColunaVersaoModel;
import java.util.List;
import javax.swing.DefaultComboBoxModel;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author Santos
 */
public class AssociarColunaVersaoController implements InterfaceController<AssociarColunaVersaoModel> {

    br.com.documentar.DAO.AssociarColunaVersaoDAO dao = new br.com.documentar.DAO.AssociarColunaVersaoDAO();

    @Override
    public AssociarColunaVersaoModel getModel() {
        return new br.com.documentar.model.AssociarColunaVersaoModel();
    }

    @Override
    public DefaultTableModel insertTableModel(AssociarColunaVersaoModel model) {
        model.getModelTable().setNumRows(0);
        for (br.com.documentar.model.AssociarColunaVersaoModel p : dao.getDados(model)) {
            model.getModelTable().addRow(new Object[]{
                p.getProduto().getCodigo() + " - " + p.getProduto().getNome(),
                p.getVersao().getCodigo() + " - " + p.getVersao().getNome(),
                p.getColuna().getTabela().getCodigo() + " - " + p.getColuna().getTabela().getNome(),
                p.getColuna().getCodigo() + " - " + p.getColuna().getNome(),
                p.getTipoDadoPadrao(),
                p.getTamanhoDadoPadrao(),
                p.getAceitaNullPadrao(),
                p.getValorPadrao(),
                p.getAutoIncrementoPadrao(),
                p.getChavePrimariaPadrao(),
                p.getChaveEstrangeiraPadrao(),
                p.getChaveUnicaPadrao(),
                p.getTemCheckPadrao(),
                p.getAcao(),
                p.getAtivo(),
                p.getSql()});
        }
        return model.getModelTable();
    }

    @Override
    public DefaultTableModel getDadosTableModel(AssociarColunaVersaoModel model) {
        return insertTableModel(model);
    }

    @Override
    public boolean setDados(AssociarColunaVersaoModel model) {
        return dao.setDados(model);
    }

    @Override
    public DefaultComboBoxModel getDadosComboBoxModel(AssociarColunaVersaoModel model) {
        return insertComboBoxModel(model);
    }

    @Override
    public DefaultComboBoxModel insertComboBoxModel(AssociarColunaVersaoModel model) {
        for (br.com.documentar.model.AssociarColunaVersaoModel p : dao.getDados(model)) {
            model.getModelComboBox().addElement(p.getColuna().getCodigo() + " - " + p.getColuna().getNome());
        }
        return model.getModelComboBox();
    }

    public List<AssociarColunaVersaoModel> getDados(AssociarColunaVersaoModel model) {
        return dao.getDados(model);
    }
}
